﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SEG.Model;
using Common.UI.EM.Agregation;
using System.Windows;

namespace SEG.UI.Control.Views
{
    public class GruposAgregationView : AgregationView<Grupo>
    {
        public override bool ValidateNewEntity(Grupo entityObject)
        {
            if (entityObject == null ||
                entityObject.ID_Grupo == Guid.Empty ||
                entityObject.ChangeTracker.State == Common.Model.ObjectState.Added)
            {
                MessageBox.Show("El campo Grupo es de ingreso obligatorio.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                return false;
            }
            if (this.List.Count(g => g.ID_Grupo == entityObject.ID_Grupo) != 0)
            {
                MessageBox.Show("El Grupo seleccionado ya se encuentra asociado al usuario.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                return false;
            }
            return true;
        }

        protected override void AddColumnDefinitions()
        {
            this.View.AddColumnDefinition("Codigo", "Código");
            this.View.AddColumnDefinition("Nombre", "Nombre");
        }

        protected override void InitializeDetailDataView()
        {
            this.View.CustomControl = new GruposDetailDataView();
        }
    }
}
